import { useIntersectionObserver } from '@vueuse/core'

// 定义全局指令  懒加载插件
export const lazyPlugin = {
  install(app) {
    // 图片懒加载
    app.directive('img-lazy', {
      mounted(el, binding) {
        // el: 指令所在元素
        // binding: 指令绑定的数据对象 也就是图片url
        const { stop } = useIntersectionObserver(el, ([{ isIntersecting }]) => {
          if(isIntersecting) {
            // 图片进入可视区域
            el.src = binding.value
            stop()
          }
        })
      }
    })
  }
}